home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-01-01 | 2.9 KB | 130 lines | [TEXT/MPS ] |
- //# Copyright: © 1993 - 1995 by Apple Computer, Inc., all rights reserved.
-
- #ifndef _TRNSFRMB_
- #define _TRNSFRMB_
-
- #ifndef _REFCTOBJ_
- #include "RefCtObj.idl"
- #endif
-
- //==============================================================================
- // Classes defined in this interface
- //==============================================================================
-
- interface ODBaseTransform;
-
- //==============================================================================
- // Classes used by this interface
- //==============================================================================
-
- interface ODTransform;
- interface ODShape;
- interface ODStorageUnit;
-
- //==============================================================================
- // ODTransform
- //==============================================================================
-
- interface ODBaseTransform : ODRefCntObject
- {
- //#---------------------------------
- //# factories:
-
- ODTransform NewTransform();
- ODTransform Copy();
-
- //#---------------------------------
- //# getters:
-
- ODTransformType GetType();
- void GetOffset(out ODPoint offset);
- void GetPreScaleOffset(out ODPoint offset);
- void GetScale(out ODPoint scale);
- void GetMatrix(out ODMatrix matrix);
- ODBoolean HasMatrix();
-
- ODBoolean IsSameAs(in ODTransform compareTransform);
-
- //#---------------------------------
- //# setters:
-
- ODTransform Reset();
- ODTransform SetMatrix(in ODMatrix matrix);
- ODTransform CopyFrom(in ODTransform sourceTransform);
-
- //#---------------------------------
- //# geometric operations:
-
- ODTransform SetOffset(in ODPoint point);
- ODTransform MoveBy(in ODPoint point);
- ODTransform ScaleBy( in ODPoint scale);
- ODTransform ScaleDownBy( in ODPoint scale);
-
- ODTransform Invert( );
- ODTransform PreCompose(in ODTransform transform);
- ODTransform PostCompose(in ODTransform transform);
-
- //#---------------------------------
- //# geometry operations with points & shapes:
-
- void TransformPoint(inout ODPoint point);
- void InvertPoint(inout ODPoint point);
-
- void TransformShape(in ODShape shape);
- void InvertShape(in ODShape shape);
-
- //#---------------------------------
- //# input / output:
-
- void WriteTo(in ODStorageUnit storageUnit);
- void ReadFrom(in ODStorageUnit storageUnit);
-
-
- #ifdef __SOMIDL__
- implementation
- {
- override:
- somUninit,
- Purge,
- Release;
-
- releaseorder:
- GetType,
- GetOffset,
- GetPreScaleOffset,
- GetScale,
- GetMatrix,
- HasMatrix,
- IsSameAs,
- Reset,
- SetMatrix,
- Copy,
- CopyFrom,
- SetOffset,
- MoveBy,
- ScaleBy,
- ScaleDownBy,
- Invert,
- PreCompose,
- PostCompose,
- TransformPoint,
- InvertPoint,
- TransformShape,
- InvertShape,
- WriteTo,
- ReadFrom,
- NewTransform,
- reserved1,
- reserved2;
-
- majorversion = 1; minorversion = 0;
-
- functionprefix = ODBaseTransform__;
-
- };
- #endif
- };
-
- #endif //# _TRNSFRMB_
-
-